home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
IDLIncludes
/
Movies.idl
< prev
next >
Wrap
Text File
|
1996-05-01
|
13KB
|
524 lines
/*
File: Movies.idl
Contains: QuickTime Interfaces.
Version: Technology: QuickTime 2.1
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __MOVIES_IDL__
#define __MOVIES_IDL__
#include <somobj.idl>
#include <somcls.idl>
#ifndef __QUICKDRAW_IDL__
#include <Quickdraw.idl>
#endif
#ifndef __ALIASES_IDL__
#include <Aliases.idl>
#endif
#ifndef __EVENTS_IDL__
#include <Events.idl>
#endif
#ifndef __MENUS_IDL__
#include <Menus.idl>
#endif
#ifndef __COMPONENTS_IDL__
#include <Components.idl>
#endif
#ifndef __IMAGECOMPRESSION_IDL__
#include <ImageCompression.idl>
#endif
#ifdef __SOMIDL__
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
/* "kFix1" is defined in FixMath as "fixed1" */
/* error codes are in Errors.[haa] */
/* gestalt codes are in Gestalt.[hpa] */
typedef SOMFourByteStruct MovieRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr Movie; /* Substituted OpaquePtr for ``MovieRecord*'' */
typedef SOMFourByteStruct TrackRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr Track; /* Substituted OpaquePtr for ``TrackRecord*'' */
typedef SOMFourByteStruct MediaRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr Media; /* Substituted OpaquePtr for ``MediaRecord*'' */
typedef SOMFourByteStruct UserDataRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr UserData; /* Substituted OpaquePtr for ``UserDataRecord*'' */
typedef SOMFourByteStruct TrackEditStateRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr TrackEditState; /* Substituted OpaquePtr for ``TrackEditStateRecord*'' */
typedef SOMFourByteStruct MovieEditStateRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr MovieEditState; /* Substituted OpaquePtr for ``MovieEditStateRecord*'' */
typedef SOMLargeStruct SampleDescription; /* Derived from a struct of 16 bytes in size */
typedef OpaquePtr SampleDescriptionPtr; /* Substituted OpaquePtr for ``SampleDescription*'' */
typedef OpaquePtr SampleDescriptionHandle; /* Substituted OpaquePtr for ``SampleDescriptionPtr*'' */
typedef SOMFourByteStruct SpriteWorldRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr SpriteWorld; /* Substituted OpaquePtr for ``SpriteWorldRecord*'' */
typedef SOMFourByteStruct SpriteRecord; /* Derived from a struct of 4 bytes in size */
typedef SpriteRecord Sprite;
typedef Handle QTAtomContainer;
typedef long QTAtom;
typedef long QTAtomType;
typedef long QTAtomID;
typedef SOMLargeStruct SoundDescription; /* Derived from a struct of 36 bytes in size */
typedef OpaquePtr SoundDescriptionPtr; /* Substituted OpaquePtr for ``SoundDescription*'' */
typedef OpaquePtr SoundDescriptionHandle; /* Substituted OpaquePtr for ``SoundDescriptionPtr*'' */
typedef SOMLargeStruct TextDescription; /* Derived from a struct of 59 bytes in size */
typedef OpaquePtr TextDescriptionPtr; /* Substituted OpaquePtr for ``TextDescription*'' */
typedef OpaquePtr TextDescriptionHandle; /* Substituted OpaquePtr for ``TextDescriptionPtr*'' */
typedef SOMLargeStruct DataReferenceRecord; /* Derived from a struct of 8 bytes in size */
typedef OpaquePtr DataReferencePtr; /* Substituted OpaquePtr for ``DataReferenceRecord*'' */
/*
--------------------------
Music Sample Description
--------------------------
*/
typedef SOMLargeStruct MusicDescription; /* Derived from a struct of 24 bytes in size */
typedef OpaquePtr MusicDescriptionPtr; /* Substituted OpaquePtr for ``MusicDescription*'' */
typedef OpaquePtr MusicDescriptionHandle; /* Substituted OpaquePtr for ``MusicDescriptionPtr*'' */
/* progress messages */
/* progress operations */
typedef OpaquePtr MovieRgnCoverProcPtr;
typedef OpaquePtr MovieRgnCoverUPP;
typedef OpaquePtr MovieProgressProcPtr;
typedef OpaquePtr MovieProgressUPP;
typedef OpaquePtr MovieDrawingCompleteProcPtr;
typedef OpaquePtr MovieDrawingCompleteUPP;
typedef OpaquePtr TrackTransferProcPtr;
typedef OpaquePtr TrackTransferUPP;
typedef OpaquePtr GetMovieProcPtr;
typedef OpaquePtr GetMovieUPP;
typedef OpaquePtr MoviePreviewCallOutProcPtr;
typedef OpaquePtr MoviePreviewCallOutUPP;
typedef OpaquePtr MoviesErrorProcPtr;
typedef OpaquePtr MoviesErrorUPP;
typedef OpaquePtr TextMediaProcPtr;
typedef OpaquePtr TextMediaUPP;
typedef ComponentInstance MediaHandler;
typedef ComponentInstance DataHandler;
typedef Component MediaHandlerComponent;
typedef Component DataHandlerComponent;
typedef ComponentResult HandlerError;
/* TimeBase equates */
typedef long TimeValue;
typedef long TimeScale;
typedef wide CompTimeValue;
typedef unsigned long TimeBaseFlags;
typedef SOMFourByteStruct TimeBaseRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr TimeBase; /* Substituted OpaquePtr for ``TimeBaseRecord*'' */
typedef SOMFourByteStruct CallBackRecord; /* Derived from a struct of 4 bytes in size */
typedef OpaquePtr QTCallBack; /* Substituted OpaquePtr for ``CallBackRecord*'' */
typedef SOMLargeStruct TimeRecord; /* Derived from a struct of 16 bytes in size */
/* CallBack equates */
typedef unsigned short QTCallBackFlags;
typedef unsigned long TimeBaseStatus;
typedef unsigned short QTCallBackType;
typedef OpaquePtr QTCallBackProcPtr;
typedef OpaquePtr QTCallBackUPP;
typedef SOMLargeStruct QTCallBackHeader; /* Derived from a struct of 48 bytes in size */
typedef OpaquePtr QTSyncTaskProcPtr;
typedef OpaquePtr QTSyncTaskUPP;
typedef SOMLargeStruct QTSyncTaskRecord; /* Derived from a struct of 8 bytes in size */
typedef OpaquePtr QTSyncTaskPtr; /* Substituted OpaquePtr for ``QTSyncTaskRecord*'' */
/* track usage bits */
/* Add/GetMediaSample flags */
typedef unsigned short nextTimeFlagsEnum;
typedef unsigned long createMovieFileFlagsEnum;
typedef unsigned long movieFlattenFlagsEnum;
typedef unsigned long dataRefAttributesFlags;
typedef unsigned long playHintsEnum;
typedef unsigned long mediaHandlerFlagsEnum;
typedef SOMLargeStruct SampleReferenceRecord; /* Derived from a struct of 18 bytes in size */
typedef OpaquePtr SampleReferencePtr; /* Substituted OpaquePtr for ``SampleReferenceRecord*'' */
/*
************************
* Initialization Routines
*************************
*/
/*
************************
* Error Routines
*************************
*/
/*
************************
* Idle Routines
*************************
*/
/*
************************
* calls for playing movies, previews, posters
*************************
*/
/*
************************
* calls for controlling movies & tracks which are playing
*************************
*/
/* called between Begin & EndUpdate */
/**** spatial movie routines ****/
/** movie display clip */
/** movie src clip */
/** track src clip */
/** bounds in display space (not clipped by display clip) */
/** bounds in movie space */
/** bounds in track space */
/** mattes - always in track space */
/*
************************
* calls for getting/saving movies
*************************
*/
/*
************************
* Movie State Routines
*************************
*/
/*
************************
* Track/Media finding routines
*************************
*/
/*
************************
* Track creation routines
*************************
*/
/*
************************
* Track State routines
*************************
*/
/*
************************
* get Media routines
*************************
*/
/*
************************
* Media State routines
*************************
*/
/*
************************
* Media Handler routines
*************************
*/
/*
************************
* Media's Data routines
*************************
*/
/*
************************
* Media Sample Table Routines
*************************
*/
/*
************************
* Editing Routines
*************************
*/
/*
************************
* Hi-level Editing Routines
*************************
*/
/*
************************
* Middle-level Editing Routines
*************************
*/
/*
************************
* movie & track edit state routines
*************************
*/
/*
************************
* track reference routines
*************************
*/
/*
************************
* modifier track types
*************************
*/
typedef SOMLargeStruct ModifierTrackGraphicsModeRecord; /* Derived from a struct of 10 bytes in size */
/*
************************
* high level file conversion routines
*************************
*/
/*
************************
* Movie Timebase Conversion Routines
*************************
*/
/*
************************
* Miscellaneous Routines
*************************
*/
/*
************************
* Group Selection Routines
*************************
*/
/*
************************
* User Data
*************************
*/
/*
************************
* Video Media routines
*************************
*/
/* use these two routines at your own peril*/
/*
************************
* Sound Media routines
*************************
*/
/*
************************
* Sprite Media routines
*************************
*/
/* flags for HitTestSpriteMedia */
/* atom types for sprite media */
/*
************************
* Text Media routines
*************************
*/
/* Return displayFlags for TextProc */
/*
***
Movie Controller support routines
***
*/
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
/*
****
Scrap routines
****
*/
/*
****
DataRef routines
****
*/
/*
****
Playback hint routines
****
*/
/*
****
Load time track hints
****
*/
/*
****
Big screen TV
****
*/
/*
****
Sprite Toolbox
****
*/
/* Sprite Properties*/
/* flagsIn for SpriteWorldIdle*/
/* flagsOut for SpriteWorldIdle*/
/* flags for sprite track sample format*/
/*
****
QT Atom Data Support
****
*/
/* create and dispose QTAtomContainer objects*/
/* locating nested atoms within QTAtomContainer container*/
/* set a leaf atom's data*/
/* extracting data*/
/* extract a copy of an atom and all of it's children, caller disposes*/
/* obtaining direct reference to atom data*/
/*
building QTAtomContainer trees
creates and inserts new atom at specified index, existing atoms at or after index are moved toward end of list
used for Top-Down tree creation
*/
/* inserts children from childrenContainer as children of parentAtom*/
/* destruction*/
/* replacement must be same type as target*/
typedef ComponentInstance MovieController;
typedef short mcAction;
typedef unsigned long mcFlags;
typedef OpaquePtr MCActionFilterProcPtr;
typedef OpaquePtr MCActionFilterUPP;
typedef OpaquePtr MCActionFilterWithRefConProcPtr;
typedef OpaquePtr MCActionFilterWithRefConUPP;
/*
menu related stuff
*/
/* menu item codes*/
/* target management */
/* event handling etc. */
/* obsolete. use MCSetActionFilterWithRefCon instead. */
/*
proc is of the form:
Boolean userPlayerFilter(MovieController mc, short *action, void *params) =
proc returns TRUE if it handles the action, FALSE if not
action is passed as a VAR so that it could be changed by filter (ick)
this is consistent with the current dialog manager stuff
params is any potential parameters that go with the action <triple ick>
such as set playback rate to xxx.
*/
/* state type things */
/* other stuff */
/*
called when the app has changed thing about the movie (like bounding rect) or rate. So that we
can update our graphical (and internal) state accordingly.
*/
/*
duration to use for time slider -- will be reset next time MCMovieChanged is called
or MCSetMovie is called
*/
/*
returns the time value and the time scale it is on. if there are no movies, the
time scale is passed back as 0. scale is an optional parameter
*/
/*
makes m the only movie attached to the controller. makes the controller visible.
the window and where parameters are passed a long to MCSetMovie and behave as
described there
*/
/*
calls for editing
*/
/*
* somewhat special stuff
*/
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
/*
***************************************
* *
* T I M E B A S E *
* *
***************************************
*/
/*
***************************************
* *
* C A L L B A C K *
* *
***************************************
*/
/*
***************************************
* *
* C L O C K C A L L B A C K *
* S U P P O R T *
* *
***************************************
*/
/*
***************************************
* *
* S Y N C T A S K S *
* S U P P O R T *
* *
***************************************
*/
/* UPP call backs */
#endif
#endif /* __SOMIDL__ */
#endif /* __MOVIES_IDL__ */